ThinkPHP5

您所在的位置:网站首页 thinkphp5 教程 ThinkPHP5

ThinkPHP5

2024-02-02 13:30| 来源: 网络整理| 查看: 265

一、ThinkPHP简介

i. ThinkPHP是一个免费开源 快速简单 面向对象 轻量级的PHP开发框架

ii. 创立于2006年初 遵循Apache2开源协议发布

iii. 秉承简洁实用的设计原则 注重易用性

iv. 支持composer(包管理工具)方式安装 类似于node.js里面的npm

v. 5版本与之前版本不兼容

二、MVC简介

i. Model(模型) View(视图) Controller(控制器)的缩写 是一种业务逻辑 数据 显示页面分离的设计典范(设计模式:单例|工厂|观察者...) 业务逻辑封装之后 在改进或者个性化定制界面用户交互的同时 对编写好的业务逻辑不影响

ii. 优势

1. 耦合性低 任何一层的改变 对其他层影响不大

2. 重用性高

3. 可维护性高

 

 

iii. MVC的变形

1. 无Model模式

a) 企业官网 静态数据展示 基本上不涉及数据库操作 展示静态页面 Controller主要是路由跳转   View主要展示页面

2. 无View的API接口开发

a) 给app写接口的时候 不需要展示界面 所有数据都通过json|xml返回

 

三、ThinkPHP5的安装

i. Git方式安装

1. https://github.com/top-think

2. 需要clone两个包

 

a) 进入think 选择open in Desktop(选择clone或者open in Desktop 本地都需要安装git环境 最简单的下载git桌面版  详情参考版本工具GIT篇) 如果是用命令行 可以加上git clone --depth=1 ... 只克隆最新一次commit

 

 

b) 选择本地项目目录

 

 

c) 然后clone framework 核心包

 

d) 在上一步的目录下新建thinkphp目录  clone

 

 

浏览器访问 进入到public目录 出现下面界面说明安装成功

 

同理  选择DownloadZip 然后解压缩 也可以   分别下载两个包 然后将framework包重命名thinkphp 移动到think目录下即可

ii. Composer方式安装

1. 本地先安装composer环境

a) 进入官网 https://www.phpcomposer.com/  ->下载

 

 

b) 双击 安装  (过程中需要绑定php.exe)

 

c) windows+R  cmd 打开命令行  composer验证是否安装成功

 

d)  通过composer安装ThinkPHP

i. 命令行进入项目目录

 

ii. Composer create-project --prefer-dist topthink/think think_composer进入到项目目录 命令行安装

composer create-project --prefer-dist topthink/think=5.0.20 think_composer 可以指定下载版本

 

 

 

 

安装过程中 需要联网......  网速不稳定的话 可能会导致安装不成功

也可以在composer官网 安装包列表 选择下载tp版本  上面的命令也可以指定版本

iii. localhost测试

 

 

iii. Download官网安装

1. 进入http://www.thinkphp.cn/ 官网

 

2. 需要先登录 然后选择版本下载

 

 

四、设置网站根目录为 public目录 (选)

i. Apache配置文件 httpd-vhosts.conf

ii. 此文件下可以配置虚拟主机  如a.com  便于本地测试

1. 需要在httpd.conf文件中打开扩展

2. 需要在System32/drivers/etc/hosts文件中配置  127.0.0.1  a.com 配置

3. 重启服务器生效

 

 

五、ThinkPHP5的目录结构

i. Application 应用目录

 

ii. Extend 扩展类库目录

1. 下载第三方库的时候使用的 不是通过composer下载的

a) 如 有一个好用的第三方库 但是没有composer包  这种情况下可以将类库下载到extend目录 之后修改命名空间 就直接可以在应用中使用了

iii. Public根目录

 

iv. Runtime 网站运行中的缓存文件 日志缓存 编译文件等等

v. Thinkphp框架系统目录

 

vi. Vendor 通过composer安装 过程中生成的目录

1. 里面有thinkphp主程序文件  各种类库文件

六、 目录和文件开发规范

i. 目录使用小写+下划线的方式命名(不允许大写)

ii. 类库函数文件名 均以.php结尾 (5版本以前是.class.php   5版本之后.php)

iii. 类的文件名均以命名空间定义 且命名空间和类库文件所在路径一致

1. 如 application/index/controller/Index.php

namespace app\index\controller (app定义顶级应用模块目录)

 

iv. 类文件采用驼峰 首字母大写 其余文件为小写+下划线命名

1. 如 控制器 Index.php

2. 路由文件 route.php  数据库配置文件 database.php

 

v. 类名和类文件名保持一致 驼峰命名 首字母大写 不需要后缀

1. 如 Index.php  (5版本前是 IndexController.php  5版本之后是 Index.php)

 

vi. 函数驼峰命名 首字母小写

1. 如 public function getUserName(){}

 

vii. 属性名驼峰 首字母小写

1. 如 public $tableName = ‘’ ;

 

viii. 以双下划线(__)开头的函数或者方法为魔术方法

1. 如 public function __construct(){}

2. 自定义函数的时候 函数名注意避免

 

ix. 常量和配置

1. 常量以大写字母和下划线命名

a) 如define(‘APP_PATH’ , __DIR__ . ’/../application/’) ;尽量不要下划线开头

2. 配置参数以小写字母和下划线命名

a) 如 config.php

 

x. 其他规范

1. 表和字段采用小写+下划线的命名方式  不能下划线开头

a) 如 tb_user 表

2. 应用类库的命名空间统一为app(可以配置)

a) 一般情况下不要更改 app为默认顶级应用

 

七、ThinkPHP5模块设计

i. 概要:

5.0版本对模块的功能做了灵活设计 默认采用多模块的架构 并且支持单一模块设计 所有模块的命名空间均以app作为根命名空间(可配置)

 

根据项目需求

 

 

 

 

 

 

FAQ:

一、启动本地环境 查看端口占用

1.找到被占端口pid

netstat -aon|findstr "3306"

 

2.根据pid 查看进程

tasklist|findstr "1880"

 

 

3.结束进程

taskkill /f /t /im mysqld.exe

 

 

 

二、自定义common模块报错:

 

报错信息:

 

分析:

这是thinkphp的规定 默认common是公用模块 存放 通用方法 不允许在URL上直接访问

解决:

 

 

将重复性的代码  权限 数据处理放在common模块  简化程序

 

 

三、修改application目录

i. 将application目录重命名 app

ii. 修改public/index.php    define(‘APP_PATH’ , __DIR__ . ‘/../app/’);



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3